home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1999 October: Technology Seed / ADC Seed CD - October 1999.toast / FireWire / FireWire_2.1_SDK_DR3 / Source / SBP2 / FWSBP2Driver / FWSBP2Driver.h < prev    next >
Encoding:
C/C++ Source or Header  |  1999-05-17  |  2.5 KB  |  101 lines  |  [TEXT/MPS ]

  1. /*
  2.     File:        FWSBP2Driver.h
  3.  
  4.     Contains:    Include file for sample SBP-2 driver
  5.  
  6.     Version:    1.0
  7.  
  8.     Copyright:    © 1998-1999 by Apple Computer, Inc., all rights reserved.
  9.  
  10.     File Ownership:
  11.  
  12.         DRI:                Eric Anderson
  13.  
  14.         Other Contact:        
  15.  
  16.         Technology:            FireWire
  17.  
  18.     Writers:
  19.  
  20.         (EA)    Eric Anderson (ewa)
  21.  
  22.     Change History (most recent first):
  23.  
  24.        <FW7>     1/10/99    EA        Added support for testing cable power management API.
  25.        <FW6>      1/3/99    EA        Added fields to support dummy ORB and chain of ORBs.
  26.        <FW5>      1/3/99    EA        Added fields to support testing
  27.                                     FWGetSBP2NormalCommandObjectIDFromORB_POINTER.
  28.        <FW4>    12/31/98    EA        Added support for sending a TARGET RESET management ORB.
  29.        <FW3>    11/18/98    EA        Added LUN to global data.
  30.        <FW2>     9/20/98    EA        Filled in header comments.
  31.        <FW1>     9/20/98    EA        first checked in
  32. */
  33.  
  34.  
  35. #ifndef __FWSBP2DRIVER__
  36. #define __FWSBP2DRIVER__
  37.  
  38. #ifndef __TYPES__
  39. #include <Types.h>
  40. #endif
  41. #ifndef __FIREWIRE__
  42. #include <FireWire.h>
  43. #endif
  44.  
  45. #ifdef __cplusplus
  46. extern "C" {
  47. #endif
  48.  
  49. #if PRAGMA_IMPORT_SUPPORTED
  50. #pragma import on
  51. #endif
  52.  
  53. #if PRAGMA_ALIGN_SUPPORTED
  54. #pragma options align=mac68k
  55. #endif
  56.  
  57. struct FWSBP2DriverDataStruct
  58. {
  59.     FWReferenceID                localFWReferenceID;        // Reference to local node.
  60.     FWDriverID                    fwDriverID;                // Our driver ID.
  61.     CSRROMEntryID                csrUnitID;                // Out unit directory ID.
  62.     UInt32                        lun;
  63.     
  64.     FWCommandObjectID            loginCommandID;            // Login command object
  65.     Boolean                        login;                    // True if we're logged in.
  66.     Boolean                        reconnecting;            // True if a reconnect is in progress.
  67.     Boolean                        reconnectFailed;        // True if a reconnect failed.
  68.     UInt32                        notificationCounter;
  69.     UInt32                        notificationEvent;
  70.     UInt32                        notificationLength;
  71.     Ptr                            notificationMessage;
  72.     FWAddress                    fetchAgent;                // From login response.
  73.     
  74.     FWCommandObjectID            dummyOrbID;                // ORB command object
  75.     FWCommandObjectID            firstOrbID;                // ORB command object
  76.     FWCommandObjectID            orbID;                    // ORB command object
  77.     FWCommandObjectID            managementORBID;        // management ORB command object
  78.     FWCommandObjectID            fwAGENT_RESET_ID;        // Command object for FWWrite
  79.     FWCommandObjectID            fwDOORBELL_ID;            // Command object for FWWrite
  80.  
  81.     FWCommandObjectID            readORB_POINTER_ID;        // command object to read ORB_POINTER with
  82.     FWCommandObjectID            powerChangeID;            // command object to manage power with
  83. };
  84. typedef struct FWSBP2DriverDataStruct
  85.                                 FWSBP2DriverData,
  86.                                 *FWSBP2DriverDataPtr;
  87.  
  88. #if PRAGMA_ALIGN_SUPPORTED
  89. #pragma options align=reset
  90. #endif
  91.  
  92. #if PRAGMA_IMPORT_SUPPORTED
  93. #pragma import off
  94. #endif
  95.  
  96. #ifdef __cplusplus
  97. }
  98. #endif
  99.  
  100. #endif /* __FWSBP2DRIVER__ */
  101.